﻿using System.Collections.Generic;

namespace TimeProject.Engine.Providers
{
    public interface IUserOptionProvider
    {
        IEnumerable<BooleanUserOptionDefinition> GetBooleanUserOptionDefinitions();
    }

    /// <summary>
    /// An abstract base class for user options.
    /// </summary>
    public abstract class UserOptionDefinition<T>
    {
        /// <summary>
        /// The option key.
        /// </summary>
        public string Key { get; set; }

        /// <summary>
        /// The option title.
        /// </summary>
        public string Title { get; set; }
    }

    public class BooleanUserOptionDefinition : UserOptionDefinition<bool>
    {
    }

}
